专利摘要:
本發明公開了一種針對CABAC/CAVLC熵編碼的統一二值化。根據任何期望複雜度(例如,熵編碼和/或解碼)實施可擴展熵編碼。例如,適當實現的上下文自我調整可變長度編碼(CAVLC)和上下文自我調整二進位算術編碼(CABAC)允許根據不同複雜度的選擇性熵編碼。給定裝置可根據第一時間的第一級複雜度、第二時間的第二級複雜度、以此類推來操作。編碼器/發射器裝置和解碼器/接收器裝置之間的適當協調和發信允許根據期望複雜度的相應協調。例如,可變長度二值化模組和算術編碼模組可在編碼器/發射器裝置內實施,以及相對應的算術解碼模組和可變長度倉解碼模組可在解碼器/接收器裝置內實施,從而允許根據不同複雜度的熵編碼。
公开号:TW201320624A
申请号:TW101127211
申请日:2012-07-27
公开日:2013-05-16
发明作者:Brian Heng;Ba-Zhong Shen
申请人:Broadcom Corp;
IPC主号:H03M7-00
专利说明:
用於操作通訊裝置的熵編碼器及設備相關申請的交叉參考
本申請要求於2011年8月5日提交的美國臨時專利申請61/515,819、2012年6月14日提交的美國實用專利申請13/523,818的優先權,其全部內容結合於此作為參考。援引加入
以下標準/草案標準,其全部內容以引用的方式結合於本文中,並作為本申請的一部分用於所有目的:
1. 2011年11月21日至30日,日內瓦ITU-TSG16 WP3和ISO/IEC JTC1/SC29/WG11視頻編碼聯合協作小組(JCT-VC)第七次會議,“High efficiency video coding(HEVC)text specification draft6”,文件:JCTVC-H1003,259頁。
2.國際電信聯盟,ITU-T,ITU的電信標準化部分,H.264(03/2010),H系列:AUDIOVISUAL AND MULTIMEDIA SYSTEMS,Infrastructure of audiovisual services-Coding of moving video,Advanced video coding for generic audiovisual services,Recommendation ITU-T H.264,可替換地,也被稱為International Telecomm ISO/IEC 14496-10-Mpeg-4 Part 10,AVC(Advanced Video Coding),H.264/MPEG-4 Part 10或AVC(Advanced Video Coding),ITU H.264/MPEG4-AVC或等同物。
本發明大體上涉及數位視訊處理;以及更具體地,本發明涉及根據這種數位視訊處理的發信。
進行操作從而通訊數位媒體(例如,圖像、視頻、資料等)的通訊系統已經連續發展多年。針對採用某種形式的視頻資料的通訊系統而言,以某個畫面播放速率(例如,每秒框數)輸出或者顯示許多數位圖像,以實現適合於輸出和消費的視訊訊號。在使用視頻資料進行操作的許多這種通訊系統內,輸送量(例如,可從第一位置傳輸到第二位置的圖像框數)與最終要被輸出或者顯示的信號的視頻和/或圖像品質之間可能存在權衡。現有技術未充分或者合意地提供一種手段,通過該手段能夠依照在充分或者可接受的視頻和/或圖像品質條件下將視頻資料從第一位置傳輸到第二位置,確保與通訊相關聯的相對低的開銷量、在通訊鏈路各端的通訊裝置的相對低複雜性等。
根據本發明的一個方面,提供了一種設備,包括:輸入端,接收多個語法元素;熵編碼器,操作地根據多個複雜性運算模式自我調整執行熵編碼,所述熵編碼器包括:可變長度二值化模組,處理所述多個語法元素以產生多個上下文自我調整二進位算術編碼CABAC倉或者多個上下文自我調整可變長度編碼CAVLC位元;以及算術編碼模組,處理所述多個CABAC倉以產生多個CABAC位元;以及至少一個輸出端,當所述熵編碼器根據所述多個複雜性運算模式中的第一複雜性運算模式操作時輸出所述CABAC位元,以及當所述熵編碼器根據所述多個複雜性運算模式中的第二複雜性運算模式操作時輸出所述CAVLC位元。
較佳地,其中多個CABAC倉為所述多個CAVLC位元。
較佳地,其中熵編碼器在第一時間處或者在第一時間期間根據所述多個複雜性運算模式中的所述第一複雜性運算模式執行熵編碼;以及熵編碼器在第二時間處或者在第二時間期間根據所述多個複雜性運算模式中的所述第二複雜性運算模式執行熵編碼;並且多個複雜性運算模式中的所述第二複雜性運算模式與所述多個複雜性運算模式中的第一複雜性運算模式相比不複雜。
較佳地,其中所述設備為第一通訊裝置;並且還包括:第二通訊裝置,經由至少一個通訊通道與所述第一通訊裝置進行通訊,所述第二通訊裝置包括:至少一個附加輸入端,接收所述多個CABAC位元或者所述多個CAVLC位元;以及熵解碼器,包括:算術解碼模組,處理所述多個CABAC位元以產生多個CABAC倉;以及可變長度倉解碼模組,處理所述多個CAVLC位元或者所述多個CABAC倉以產生所述多個語法元素的多個估計;以及其中:所述第二通訊裝置為電腦、膝上型電腦、高清晰度(HD)電視機、標準清晰度(SD)電視機、掌上型媒體單元、機上盒(STB)和數位視訊光碟(DVD)播放機中的至少一個。
較佳地,其中設備是在衛星通訊系統、無線通訊系統、有線通訊系統、光纖通訊系統和移動通訊系統的至少一個中操作的通訊裝置。
根據本發明的另一方面,提供了一種設備,包括:輸入端,接收多個語法元素;熵編碼器,包括:可變長度二值化模組,處理所述多個語法元素以產生多個上下文自我調整二進位算術編碼(CABAC)倉或者多個上下文自我調整可變長度編碼(CAVLC)位元;和算術編碼模組,處理所述多個CABAC倉以產生多個CABAC位元;以及至少一個輸出端,選擇性輸出所述多個CABAC位元或者所述多個CAVLC位元。
較佳地,其中多個CABAC倉為所述多個CAVLC位元。
較佳地,其中熵編碼器操作地根據多個複雜性運算模式自我調整執行熵編碼。
較佳地,其中熵編碼器在第一時間處或者在第一時間期間根據第一複雜性運算模式執行熵編碼;以及熵編碼器在第二時間處或者在第二時間期間根據第二複雜性運算模式執行熵編碼。
較佳地,其中當所述熵編碼器根據第一複雜性運算模式操作時,所述至少一個輸出端輸出所述CABAC位元;以及當所述熵編碼器根據與所述第一複雜性運算模式相比不複雜的第二複雜性運算模式操作時,所述至少一個輸出端輸出所述CAVLC位元。
較佳地,所述設備還包括:至少一個附加輸入端,接收所述多個CABAC位元或者所述多個CAVLC位元;以及熵解碼器,包括:算術解碼模組,處理所述多個CABAC位元以產生多個CABAC倉;以及可變長度倉解碼模組,處理所述多個CAVLC位元或者所述多個CABAC倉以產生所述多個語法元素的多個估計。
較佳地,其中所述設備為第一通訊裝置;並且還包括:第二通訊裝置,經由至少一個通訊通道與所述第一通訊裝置進行通訊,所述第二通訊裝置包括:至少一個附加輸入端,接收所述多個CABAC位元或者所述多個CAVLC位元;以及熵解碼器,包括:算術解碼模組,處理所述多個CABAC位元以產生多個CABAC倉;以及可變長度倉解碼模組,處理所述多個CAVLC位元或者所述多個CABAC倉以產生所述多個語法元素的多個估計;以及其中:所述第二通訊裝置為電腦、膝上型電腦、高清晰度(HD)電視機、標準清晰度(SD)電視機、掌上型媒體單元、機上盒(STB)和數位視訊光碟(DVD)播放機中的至少一個。
較佳地,其中所述設備是在衛星通訊系統、無線通訊系統、有線通訊系統、光纖通訊系統和移動通訊系統的至少一個中操作的通訊裝置。
根據本發明的又一方面,提供了一種用於操作通訊裝置的熵編碼器的方法,所述方法包括:接收多個語法元素;操作所述熵編碼器的可變長度二值化模組,從而處理所述多個語法元素,以產生多個上下文自我調整二進位算術編碼(CABAC)倉或者多個上下文自我調整可變長度編碼(CAVLC)位元;和操作所述熵編碼器的算術編碼模組從而處理所述多個CABAC倉,以產生多個CABAC位元;以及選擇性輸出所述多個CABAC位元或者所述多個CAVLC位元。
較佳地,其中所述多個CABAC倉為所述多個CAVLC位元。
較佳地,其中所述熵編碼器操作地根據多個複雜性運算模式自我調整執行熵編碼。
所述方法還包括:操作所述熵編碼器從而在第一時間處或者在第一時間期間根據第一複雜性運算模式執行熵編碼;以及操作所述熵編碼器從而在第二時間處或者在第二時間期間根據第二複雜性運算模式執行熵編碼。
所述方法還包括:當所述熵編碼器根據第一複雜性運算模式操作時,輸出所述CABAC位元;以及當所述熵編碼器根據與所述第一複雜性運算模式相比不複雜的第二複雜性運算模式操作時,輸出所述CAVLC位元。
所述方法還包括:操作附加通訊裝置,經由至少一個通訊通道通過以下步驟與所述通訊裝置進行通訊:接收所述多個CABAC位元或者所述多個CAVLC位元;操作算術解碼模組來處理所述多個CABAC位元,以產生多個CABAC倉;操作可變長度倉解碼模組來處理所述多個CAVLC位元或者所述多個CABAC倉,以產生所述多個語法元素的多個估計,其中所述附加通訊裝置為電腦、膝上型電腦、高清晰度(HD)電視機、標準清晰度(SD)電視機、掌上型媒體單元、機上盒(STB)和數位視訊光碟(DVD)播放機中至少一個。
較佳地,其中:所述通訊裝置在衛星通訊系統、無線通訊系統、有線通訊系統、光纖通訊系統和移動通訊系統中的至少一個中操作。
在使用數位媒體(諸如數位視訊)的許多裝置內,使用圖元來呈現數位媒體的對應圖像(本質上為數位)。在某些通訊系統內,數位媒體可從第一位置傳輸到可輸出或者顯示該媒體的第二位置。數位通訊系統(包括進行操作從而通訊數位視訊的那些系統)目標是將數位資料從一個位置或者子系統無誤差地或者以可接受的低誤差率傳輸到另一位置或者子系統。如圖1所示,可在廣泛的通訊系統中通過多種通訊通道傳輸資料:磁性媒體、有線、無線、光纖、銅和/或其他類型媒介。
圖1和圖2分別為示出了通訊系統100和200的多種實施方式的圖示。
參考圖1,通訊系統100的實施方式為通訊通道199,該通訊通道將位於通訊通道199一端的通訊裝置110(包括具有編碼器114的發射器112,以及包括具有解碼器118的接收器116)通訊耦接至位於通訊通道199另一端的另一通訊裝置120(包括具有編碼器128的發射器126,以及包括具有解碼器124的接收器122)。在一些實施方式中,通訊裝置110和120任何一個可僅包括發射器或者接收器。有數個不同類型的媒介,通過該媒介,可實現通訊通道199(例如,使用碟形衛星天線132和134的衛星通訊通道130、使用通訊塔142和144和/或本地天線152和154的無線通訊通道140、有線通訊通道150和/或使用電光(E/O)介面162和電光(E/O)介面164的光纖通訊通道160)。此外,可實現多個類型的媒介並且介面在一起,從而形成通訊通道199。
請注意,在不背離本發明範圍和精神的情況下,這種通訊裝置110和/或120可為靜止或移動的。例如,通訊裝置110和120任何一個或者兩個都可實現在固定位置中或者可以是移動通訊裝置,具有以下能力:與包括一個或者多個無線區域網路(WLAN)的移動通訊系統背景下多於一個的網路接入點(例如,不同的各個接入點(AP))、包括一個或者多個衛星的移動通訊系統背景下不同的各個衛星、或者一般地包括一個或者多個網路接入點(通過該接入點可實現與通訊裝置110和/或120的通訊)的移動通訊系統背景下不同的各個網路接入點相關聯和/或通訊。
為了減少通訊系統內可能不期望地產生的傳輸誤差,通常利用誤差校正和通道編碼方案。一般地,這些誤差校正和通道編碼方案涉及在通訊通道199的發射器端使用編碼器以及在通訊通道199的接收器端使用解碼器。
所述多種類型ECC代碼的任何一個可被用於任何這種期望通訊系統(例如,包括關於圖1所描述的那些變形例)、任何資訊儲存裝置(例如,硬碟驅動器(HDD)、網路資訊儲存裝置和/或伺服器等)或者期望資訊編碼和/或解碼的任何應用內。
一般而言,當考慮其中視頻資料從一個位置或者子系統通訊到另一位置或者子系統的通訊系統時,視頻資料編碼通常可視為在通訊通道199的發射端執行,而視頻資料解碼通常可視為在通訊通道199的接收端執行。
此外,雖然本圖的實施方式示出能夠在通訊裝置110和120之間的雙向通訊,當然,應當注意,在一些實施方式中,通訊裝置110可能僅包括視頻資料編碼能力,而通訊裝置120可能僅包括視頻資料解碼能力,反之亦然(例如,在諸如根據視頻廣播實施方式的單向通訊實施方式中)。
參考圖2的通訊系統200,在通訊通道299發射端處,資訊位元201(例如,尤其對應於一個實施方式中的視頻資料)被提供給發射器297,該發射器297可操作地使用編碼器和碼元映射器220(分別可視為不同功能塊222和224)執行對這些資訊位元201的編碼,從而產生提供給發射驅動器230的離散值調製碼元序列203,該發射驅動器230使用DAC(數位至類比轉換器)232來產生連續時間發射信號204並且使用發射濾波器234來產生經濾波、連續時間發射信號205(其基本上適合通訊通道299)。在通訊通道299的接收端,連續時間接收信號206被提供給包括接收濾波器262(其產生經濾波、連續時間接收信號207)和ADC(類比至數位轉換器)264(其產生時間離散接收信號208)的AFE(模擬前端)260。度量產生器270計算由解碼器280採用的度量209(例如,按碼元和/或位元),用於對編碼在210中的離散值調製碼元和資訊位元做出最佳估計。
在各發射器297和接收器298內,可進行多種部件、塊、功能塊、電路等的任何期望整合。例如,該圖將處理模組280a示為包括編碼器和碼元映射器220以及其中的所有相關聯、相對應部件,將處理模組280b示為包括度量產生器270和解碼器280以及其中的所有相關聯、相對應部件。這種處理模組280a和280b可為相應的積體電路。當然,在不背離本發明範圍和精神的情況下,可替代性進行其他分界和分組。例如,發射器297內所有部件可包含在第一處理模組或者積體電路內,以及接收器298內所有部件可包含在第二處理模組或者積體電路內。作為替代,在其他實施方式中可做出各發射器297和接收器298內的部件的任何其他組合。
正如先前的實施方式,這種通訊系統200可被用於從一個位置或者子系統傳播到另一位置或者子系統(例如,經由通訊通道299從發射器297到接收器298)的視頻資料通訊。
數位圖像和/或媒體(包括數位視訊信號內相應的圖像)和/或數位圖像的視頻處理可通過以下圖3A至圖3H所示的任何不同裝置來進行,以允許使用者觀看這種數位圖像和/或視頻。這些多種裝置不包括可實現本文所述圖像和/或視頻處理的裝置的詳盡清單,並且請注意,在不背離本發明範圍和精神的情況下,任何通用的數位圖像和/或視頻處理裝置可被實現為執行本文所述處理。
圖3A示出了電腦301的實施方式。電腦301可為桌上型電腦或者附接至儲存陣列(諸如,獨立磁碟容錯陣列(RAID)陣列)、儲存路由器、邊緣路由器、儲存交換機和/或儲存導向器的主機電腦的企業儲存裝置(諸如伺服器)。使用者能夠使用電腦301觀看靜止的數位圖像和/或視頻(例如,數位圖像序列)。通常,多種圖像和/或視頻觀看程式和/或媒體播放機套裝程式含在電腦301上,從而允許使用者觀看這種圖像(包括視頻)。
圖3B示出了膝上型電腦302的實施方式。這種膝上型電腦302可在任何不同情況下找到和使用。近年來,隨著膝上型電腦內構建的處理能力和功能不斷增加,它們正被用於先前要使用高端和更多有能力的桌上型電腦的許多情況。與電腦301相同,膝上型電腦302可包括多種圖像觀看程式和/或媒體播放機程式,從而允許使用者觀看這種圖像(包括視頻)。
圖3C示出了高清晰度(HD)電視機303的實施方式。許多HD電視機303包括集成調諧器,從而允許在其上接收、處理和解碼媒體內容(例如,電視廣播信號)。作為替代,HD電視機303有時從接收、處理和解碼電纜和/或衛星電視廣播信號的另一源(諸如,數位視訊光碟(DVD)播放機、機上盒(STB))接收媒體內容。無論具體實施方式如何,HD電視機303可被實現為執行如本文所述的圖像和/或視頻處理。一般而言,HD電視機303具有顯示HD媒體內容的能力,並且有時實現為具有16:9寬屏寬高比。
圖3D示出了標準清晰度(SD)電視機304的實施方式。當然,SD電視機304有些類似於HD電視機303,其中至少一個差異在於SD電視機304不具有顯示HD媒體內容的能力,並且SD電視機304通常實現為具有4:3全屏寬高比。儘管如此,實際上SD電視機304可實現為執行如本文所述的圖像和/或視頻處理。
圖3E示出了掌上型媒體單元305的實施方式。掌上型媒體單元305可進行操作從而提供一般儲存或者圖像/視頻內容資訊(諸如,聯合圖像專家小組(JPEG)檔、標記影像檔格式(TIFF)、點陣圖、運動圖像專家小組(MPEG)檔、Windows Media(WMA/WMV)檔、諸如MPEG4檔等重播給使用者的其他類型視頻內容)和/或能夠以數位格式儲存的任何其他類型資訊的儲存。從歷史上看,這種掌上型媒體單元主要用於音訊媒體儲存和重播;然而,這種掌上型媒體單元305可用於任何虛擬媒體(例如,音訊媒體、視頻媒體、照片媒體等)的儲存和重播。此外,這種掌上型媒體單元305還可包括諸如用於有線和無線通訊的集成通訊電路的其他功能。這種掌上型媒體單元305可實現為執行如本文所述的圖像和/或視頻處理。
圖3F示出了機上盒(STB)306的實施方式。如上文提到,有時STB 306可實現為接收、處理和解碼將要提供給任何適當的顯示致能裝置(諸如SD電視機304和/或HD電視機303)的電纜和/或衛星電視廣播信號。這種STB 306可獨立地或者與這種顯示致能裝置協作地進行操作從而執行如本文所述的圖像和/或視頻處理。
圖3G示出了數位視訊光碟(DVD)播放機307的實施方式。在不背離本發明範圍和精神的情況下,這種DVD播放機可為藍光DVD播放機、HD致能DVD播放機、SD致能DVD播放機、上採樣致能DVD播放機(例如,從SD到HD等)。該DVD播放機可提供信號給任何適當的顯示致能裝置,諸如SD電視機304和/或HD電視機303。DVD播放機307可被實現為執行如本文所述的圖像和/或視頻處理。
圖3H示出了通用數位圖像和/或視頻處理裝置308的實施方式。而且,如上文提到,上述這些多種裝置不包括可實現本文所述圖像和/或視頻處理的詳盡裝置清單,並且請注意,在不背離本發明範圍和精神的情況下,任何通用數位圖像和/或視頻處理裝置308可被實現為執行本文所述的圖像和/或視頻處理。
圖4、圖5和圖6為分別示出了視頻編碼架構的多種實施方式400、500和600的圖示。
參考圖4的實施方式400,就本圖而言可看出,由視訊轉碼器接收輸入視訊訊號。在某些實施方式中,輸入視訊訊號由編碼單元(CU)或者巨集塊(MB)組成。這種編碼單元或者巨集塊的大小可變,並且可包括通常以正方形排列的許多圖元。在一個實施方式中,這種編碼單元或者巨集塊具有16×16圖元大小。然而,一般請注意,宏塊可具有任何期望大小,諸如N×N圖元,其中,N為整數。當然,雖然在較佳實施方式中利用正方形編碼單元或者巨集塊,但某些實現方式可包括非正方形編碼單元或者巨集塊。
輸入視訊訊號一般可稱為對應於原始框(或者圖片)圖像資料。例如,原始框(或者圖片)圖像資料經歷處理從而產生亮度和色度採樣。在一些實施方式中,巨集塊中亮度採樣集為一個特定排列(例如,16×16),以及色度採樣集為不同的特定排列(例如,8×8)。根據本文所述實施方式,視訊轉碼器按逐塊來處理這種採樣。
然後,輸入視訊訊號經歷模式選擇,通過該模式選擇,輸入視訊訊號選擇性經歷框內預測和/或框間預測處理。一般而言,輸入視訊訊號沿壓縮路徑經歷壓縮。當無回饋(例如,既不根據框間預測,也不根據框內預測)操作時,輸入視訊訊號經由壓縮路徑提供從而經歷變換操作(例如,根據離散余弦變換(DCT))。當然,在替代性實施方式中可利用其他變換。在該操作模式中,輸入視訊訊號本身為壓縮信號。壓縮路徑可利用執行壓縮過程中人眼缺乏對於高頻的敏感度。
然而,可通過選擇性使用框間預測或者框內預測視頻編碼從而沿壓縮路徑利用回饋。根據操作回饋或者預測模式,壓縮路徑對由從當前巨集塊減去當前巨集塊預測值所產生的(相對低能量)殘差(例如,差)操作。根據在給定情況下利用哪個預測形式,產生當前宏塊與基於同一框(或者圖片)的至少一部分或者基於至少一個其他框(或者圖片)的至少一部分的宏塊預測值之間的殘差或者差。
然後,產生的修改視訊訊號沿壓縮路徑經歷變換操作。在一個實施方式中,離散余弦變換(DCT)對視頻採樣集(例如,亮度、色度、殘差等)進行操作從而計算針對各預定數目基本圖案的對應系數值。例如,一個實施方式包括64個基本函數(例如,諸如針對8×8採樣)。一般而言,不同實施方式可利用不同數目的基本函數(例如,不同變換)。這些對應的基本函數的任何組合(包括其適當的且選擇性的加權),可被用於代表給定視頻採樣集。與執行變換操作的多種方式有關的更多細節在與視頻編碼相關的技術文獻中描述,包括如上所述結合於此作為參考的那些標準/草案標準。來自變換處理的輸出包括各個系數值。該輸出被提供給量化器。
一般地,大多數圖像塊通常會產生係數(例如,在根據離散余弦變換(DCT)操作的實施方式中的DCT係數),使得大多數相關DCT係數為較低頻率。因為上述原因以及人眼對高頻視覺效果的相對較差的敏感度,量化器可操作地將大多數不太相關的係數轉換為零值。即,根據量化處理,可除去相對貢獻低於某個預定值(例如,某個閾值)的那些係數。量化器也可操作地將重要係數轉換為比由變換處理產生的值可更高效編碼的值。例如,量化處理可通過將各相應的係數除以整數值並且丟棄任何餘數來進行操作。當對典型編碼單位或者巨集塊進行操作時,這種處理通常產生相對低數目的非零係數,該非零係數然後交付給熵編碼器,用於無損編碼並且根據回饋路徑使用,其中,該回饋路徑可根據視頻編碼來選擇框內預測和/或框間預測處理。
熵編碼器根據無失真壓縮編碼處理來操作。相比之下,量化操作一般為有損。熵編碼處理對從量化處理所提供的係數進行操作。這些係數可表示多種特性(例如,亮度、色度、殘差等)。可由熵編碼器利用多種類型的編碼。例如,可由熵編碼器執行上下文自我調整二進位算術編碼(CABAC)和/或上下文自我調整可變長度編碼(CAVLC)。例如,根據熵編碼方案的至少一部分,資料被轉換為(游,程)配對((run,level)pairing)(例如,資料14、3、0、4、0、0、-3將被轉換為相應的(運行,幅值)對(0,14)、(0,3)、(1,4)、(2,-3))。可預先準備表,該表為值對分配可變長度代碼,使得相對較短長度代碼被分配給相對共同值對,以及為相對較少共同值對分配相對較長長度代碼。
讀者應當理解,逆量化和逆變換的操作分別對應於量化和變換的操作。例如,在變換操作中利用DCT的實施方式中,然後在逆變換操作中利用逆DCT(IDCT)。
圖片緩衝器(或可稱為數位圖片緩衝器或者DPB)從IDCT模組接收信號;圖片緩衝器操作地儲存當前框(或者圖片)和/或諸如可根據框內預測和/或框間預測操作(可根據視頻編碼執行)使用的一個或者多個其他框(或者圖片)。請注意,根據框內預測,相對小的儲存量可能足夠,這是因為可能不必將當前框(或者圖片)或者任何其他框(或者圖片)儲存於框(或者圖片)序列內。在根據視頻編碼執行框內預測的情況下,這種儲存資訊可被用於執行運動壓縮和/或運動估計。
在一個可能的實施方式中,針對運動估計,來自當前框(或者圖片)的相應的亮度採樣集(例如,16×16)與框(或者圖片)序列(例如,根據框間預測)內其他框(或者圖片)中相應的緩衝配對物(counterpart)比較。在一個可能的實現方式中,定位最近匹配區域(例如,預測參考),並且產生向量偏移(例如,運動向量)。在單框(或者圖片)中,可找到許多運動向量,並且並不是全部必須指向同一方向。根據運動估計執行的一個或者多個操作可操作地產生一個或者多個運動向量。
運動補償操作地利用可根據運動估計產生的一個或者多個運動向量。識別預測參考採樣集,並且被交付用於從原始輸入視訊訊號扣除,努力希望產生相對(例如,理想地、更)較低能量殘差。如果該操作未導致產生較低能量殘差,那麼不必需要執行運動補償,以及變換操作可能僅對原始輸入視訊訊號而非殘差進行操作(例如,根據操作模式,其中輸入視訊訊號直接被提供給變換操作,使得既不執行框內預測也不執行框間預測),或者可利用框內預測,以及對由框內預測產生的殘差執行變換操作。此外,如果運動估計和/或運動補償操作成功,那麼運動向量還可與相應的殘差係數一起發送給熵編碼器,用於經歷無損熵編碼。
來自整個視頻編碼操作的輸出為輸出位元流。請注意,所述輸出位元流當然可經歷根據產生連續時間信號(其可經由通訊通道傳輸)的某些處理。例如,某些實施方式在無線通訊系統內操作。在該情況下,輸出位元流可經歷適當的數模轉換、頻率轉換、縮放、濾波、調製、碼元映射和/或在操作地產生能夠經由通訊通道傳輸的連續時間信號的無線通訊裝置內的任何其他操作等。
參考圖5的實施方式500,就本圖而言可看出,由視訊轉碼器接收輸入視訊訊號。在某些實施方式中,輸入視訊訊號由編碼單元或者巨集塊組成(和/或可分割為編碼單元(CU))。所述編碼單元或者巨集塊大小可變,並且可包括通常以正方形排列的許多圖元。在一個實施方式中,所述編碼單元或者巨集塊具有16×16圖元大小。然而,一般請注意,宏塊可具有任何期望大小,諸如N×N圖元,其中,N為整數。當然,雖然在較佳實施方式中利用正方形編碼單元或者巨集塊,但一些實現方式可包括非正方形編碼單元或者巨集塊。
輸入視訊訊號一般可稱為對應於原始框(或者圖片)圖像資料。例如,原始框(或者圖片)圖像資料可經歷處理從而產生亮度和色度採樣。在一些實施方式中,巨集塊中亮度採樣集為一個特定排列(例如,16×16),以及色度採樣集為不同的特定排列(例如,8×8)。根據本文所述實施方式,視訊轉碼器按逐塊來處理所述採樣。
然後,輸入視訊訊號經歷模式選擇,通過該模式選擇,輸入視訊訊號選擇性經歷框內預測和/或框間預測處理。一般而言,輸入視訊訊號沿壓縮路徑經歷壓縮。當無回饋(例如,既不根據框間預測,也不根據框內預測)操作時,輸入視訊訊號經由壓縮路徑提供從而經歷變換操作(例如,根據離散余弦變換(DCT))。當然,在替代性實施方式中可利用其他變換。在該操作模式中,輸入視訊訊號本身為壓縮信號。壓縮路徑可利用在執行壓縮過程中人眼缺乏對於高頻的敏感度。
然而,可通過選擇性使用框間預測或者框內預測視頻編碼從而沿壓縮路徑利用回饋。根據操作回饋或者預測模式,壓縮路徑對由從當前巨集塊減去當前巨集塊預測值所產生的(相對低能量)殘差(例如,差)操作。根據在給定情況下利用哪個預測形式,產生當前宏塊與基於同一框(或者圖片)的至少一部分或者基於至少一個其他框(或者圖片)的至少一部分的宏塊預測值之間的殘差或者差。
然後,產生的修改視訊訊號沿壓縮路徑經歷變換操作。在一個實施方式中,離散余弦變換(DCT)對視頻採樣集(例如,亮度、色度、殘差等)進行操作從而計算針對各預定數目基本圖案的對應系數值。例如,一個實施方式包括64個基本函數(例如,諸如針對8×8採樣)。一般而言,不同實施方式可利用不同數目的基本函數(例如,不同變換)。這些對應的基本函數的任何組合(包括其適當的且選擇性的加權),可被用於代表給定視頻採樣集。與執行變換操作的多種方式有關的更多細節在與視頻編碼相關的技術文獻中描述,包括如上所述結合於此作為參考的那些標準/草案標準。來自變換處理的輸出包括各個系數值。該輸出被提供給量化器。
一般地,大多數圖像塊通常會產生係數(例如,在根據離散余弦變換(DCT)操作的實施方式中,DCT係數),使得大多數相關DCT係數為較低頻率。因為上述原因以及人眼對高頻視覺效果的相對較差的敏感度,量化器可操作地將大多數不太相關的係數轉換為零值。即,根據量化處理,可除去相對貢獻低於某個預定值(例如,某個閾值)的那些係數。量化器也可操作地將重要係數轉換為比由變換處理產生的值可更高效編碼的值。例如,量化處理可通過將各相應的係數除以整數值並且丟棄任何餘數來進行操作。當對典型編碼單位或者巨集塊進行操作時,這種處理通常產生相對低數目的非零係數,該非零係數然後交付給熵編碼器,用於無損編碼並且根據回饋路徑使用,其中該回饋路徑可根據視頻編碼來選擇框內預測和/或框間預測處理。
熵編碼器根據無失真壓縮編碼處理來操作。相比之下,量化操作一般為有損。熵編碼處理對量化處理所提供的係數進行操作。這些係數可表示多種特性(例如,亮度、色度、殘差等)。可由熵編碼器利用多種類型的編碼。例如,可由熵編碼器執行上下文自我調整二進位算術編碼(CABAC)和/或上下文自我調整可變長度編碼(CAVLC)。例如,根據熵編碼方案的至少一部分,資料被轉換為(游,程)配對(例如,資料14、3、0、4、0、0、-3將被轉換為相應的(運行,幅值)對(0,14)、(0,3)、(1,4)、(2,-3))。可預先準備表,該表為值對分配可變長度代碼,使得相對較短長度代碼被分配給相對共同值對,以及為相對較少共同值對分配相對較長長度代碼。
讀者應當理解,逆量化和逆變換的操作分別對應於量化和變換的操作。例如,在變換操作中利用DCT的實施方式中,然後在逆變換操作中利用逆DCT(IDCT)。
在某些可選實施方式中,來自去塊效應濾波器的輸出被提供給一個或者多個其他環路濾波器(例如,根據採樣自我調整偏移(SAO)濾波器、自我調整環路濾波器(ALF)和/或任何其他濾波器類型實現),所述環路濾波器被實施為處理來自逆變換塊的輸出。
例如,該自我調整環路濾波器(ALF)可實現為處理來自去塊效應濾波器的輸出,或可替換地,該ALF可實現為處理來自採樣自我調整偏移(SAO)濾波器的輸出,其中該SAO濾波器首先接收來自去塊效應濾波器的輸出。在解碼圖片儲存於圖片緩衝器(有時稱為DPB,數位圖片緩衝器)之前,該自我調整環路濾波器(ALF)應用於該解碼圖片。自我調整環路濾波器(ALF)實現為降低解碼圖片的編碼雜訊,以及無論以片級或者以塊級應用自我調整環路濾波器(ALF),可按逐片分別針對亮度和色度選擇性應用其濾波。在自我調整環路濾波器(ALF)應用中可使用二維2D有限脈衝回應(FIR)濾波。濾波器的係數可在編碼器處逐片設計,以及該資訊然後發信給解碼器(例如,從包括視訊轉碼器(或可稱為編碼器)的發射器通訊裝置發信到包括視頻解碼器(或可稱為解碼器)的接收器通訊裝置)。
一個實施方式通過根據維納濾波設計產生係數來操作。此外,可能在編碼器處基於逐塊確定是否執行濾波,以及該決定然後基於四叉樹結構發信給解碼器(例如,從包括視訊轉碼器(或可稱為編碼器)的發射器通訊裝置發信到包括視頻解碼器(或可稱為解碼器)的接收器通訊裝置),其中根據碼率失真優化來決定塊大小。請注意,使用該2D濾波的實現可能引入根據編碼和解碼兩者的複雜度。例如,通過使用根據自我調整環路濾波器(ALF)實現的2D濾波,在發射器通訊裝置內實現的編碼器內以及接收器通訊裝置內實現的解碼器內可能複雜性有一些增加。
就環路濾波器一種類型而言,根據該視頻處理,自我調整環路濾波器(ALF)的使用可提供許多任意的改進,包括對來自執行隨機量化去噪的峰值信噪比(PSNR)客觀品質測量的改進。此外,隨後編碼的視訊訊號的主觀品質可從光照補償獲得,根據自我調整環路濾波器(ALF)處理,可根據執行偏移處理和縮放處理(例如,根據有限脈衝回應(FIR)濾波來施加增益)來引入光照補償。
從ALF接收輸出信號的是圖片緩衝器,或可稱為數位圖片緩衝器或者DPB;圖片緩衝器操作地儲存當前框(或者圖片)和/或諸如可根據框內預測和/或框間預測操作(可根據視頻編碼進行)使用的一個或者多個其他框(或者圖片)。請注意,根據框內預測,相對小的儲存量可能足夠,這是因為可能不必將當前框(或者圖片)或者任何其他框(或者圖片)儲存於框(或者圖片)序列內。在根據視頻編碼執行框內預測的情況下,這種儲存資訊可被用於執行運動壓縮和/或運動估計。
在一個可行實施方式中,針對運動估計,來自當前框(或者圖片)的相應的亮度採樣集(例如,16×16)與框(或者圖片)序列(例如,根據框間預測)內其他框(或者圖片)中相應的緩衝配對物比較。在一個可能的實現方式中,定位最接近匹配區域(例如,預測參考),並且產生向量偏移(例如,運動向量)。在單框(或者圖片)中,可找到許多運動向量,並且並不是全部必須指向同一方向。根據運動估計執行的一個或者多個操作可操作地產生一個或者多個運動向量。
運動補償操作地利用可根據運動估計產生的一個或者多個運動向量。識別預測參考採樣集,並且被交付用於從原始輸入視訊訊號扣除,努力希望產生相對(例如,理想地、更)較低能量殘差。如果該操作未導致產生較低能量殘差,那麼不必需要執行運動補償,以及變換操作可能僅對原始輸入視訊訊號而非殘差進行操作(例如,根據操作模式,其中,輸入視訊訊號直接被提供給變換操作,使得既不執行框內預測也不執行框間預測),或者可利用框內預測,以及對由框內預測產生的殘差執行變換操作。此外,如果運動估計和/或運動補償操作成功,那麼運動向量還可與相應的殘差係數一起發送給熵編碼器,用於經歷無損熵編碼。
來自整個視頻編碼操作的輸出為輸出位元流。請注意,該輸出位元流當然可經歷根據產生連續時間信號(其可經由通訊通道傳輸)的某些處理。例如,某些實施方式在無線通訊系統內操作。在該情況下,輸出位元流可經歷適當的數模轉換、頻率轉換、縮放、濾波、調製、碼元映射和/或在操作地產生能夠經由通訊通道傳輸的連續時間信號的無線通訊裝置內的任何其他操作等。
參考圖6的實施方式600,就本圖而言,描繪視訊轉碼器的替代性實施方式,該視訊轉碼器進行預測、變換和編碼處理從而產生已壓縮輸出位元流。該視訊轉碼器可根據一個或者多個視頻編碼協定、標準和/或推薦實踐來操作,並且符合該一個或者多個視頻編碼協定、標準和/或推薦實踐,諸如ISO/IEC 14496-10-MPEG-4第10部分,AVC(高級視頻編碼),或可稱為H.264/MPEG-4第10部分或者AVC(高級視頻編碼),ITU H.264/MPEG4-AVC。
請注意,相對應的視頻解碼器(諸如位於通訊通道另一端的裝置內),操作地執行解碼、逆變換和重構的互補處理,以產生(理想地)表示輸入視訊訊號的相應的解碼視頻序列。
就本圖而言可看出,替代性配置和架構可被用於實現視頻編碼。一般而言,編碼器處理輸入視訊訊號(例如,通常以編碼單元或者巨集塊為單位組成,經常為正方形並且包括N×N個圖元)。視頻編碼基於先前編碼資料來確定當前巨集塊預測。該先前編碼資料可來源於當前框(或者圖片)本身(例如,諸如根據框內預測),或者來源於已經編碼(例如,諸如根據框間預測)的一個或者多個其他框(或者圖片)。視訊轉碼器減去當前宏塊預測,以形成殘差。
一般而言,框內預測操作地利用一個或者多個特定大小(例如,16×16、8×8或者4×4)的塊大小來根據同一框(或者圖片)中的周圍、先前編碼圖元預測當前巨集塊。一般而言,框間預測操作地利用塊大小範圍(例如,16×16下至4×4)來根據選自一個或者多個先前編碼框(或者圖片)內的區預測當前框(或者圖片)中的圖元。
就變換和量化操作而言,殘差採樣塊可經歷使用特定變換(例如,4×4或者8×8)的變換。該變換的一個可能的實施方式根據離散余弦變換(DCT)來操作。該變換操作輸出一組係數,使得各相應係數對應於與變換相關的一個或者多個基本函數的相應加權值。在經歷變換之後,對變換係數塊進行量化(例如,各相應係數可除以整數值並且可丟棄任何相關的餘數,或者它們可乘以整數值)。量化處理通常固有地有損,並且它可根據量化參數(QP)而降低變換係數精度。通常,與給定宏塊相關的許多係數為零,並且只保留一些非零係數。一般地,相對高QP設置操作地導致零值係數的較大比例以及非零係數的較小幅值,從而導致以相對較差解碼圖像品質為代價的相對高壓縮(例如,相對較低編碼位元速率);相對低QP設置操作地允許在量化之後保留更多非零係數以及非零係數的較大幅值,從而導致具有相對較佳解碼圖像品質的相對較低壓縮(例如,相對較高編碼位元速率)。
視頻編碼處理產生許多值(其經編碼以形成壓縮位元流)。該值的實例包括:量化變換係數、將要由解碼器用於重新創建適當預測的資訊、與編碼期間利用的壓縮工具和壓縮資料的結構有關的資訊、與完整視頻序列有關的資訊等。該值和/或參數(例如,語法元素)可在根據CABAC、CAVLC或者某個其他熵編碼方案進行操作的熵編碼器內經歷編碼,以產生輸出位元流,該輸出位元流可被儲存、傳輸(例如,在經歷適當的處理之後,產生適合通訊通道的連續時間信號)等。
在使用回饋路徑進行操作的實施方式中,變換和量化的輸出經歷逆量化和逆變換。可根據視頻編碼執行框內預測和框間預測之一或者這兩者。此外,可根據該視頻編碼執行運動補償和/或運動估計。
來自逆量化和逆變換(例如,IDCT)塊的信號路徑輸出(其被提供給框內預測塊)也被提供給去塊效應濾波器。來自去塊效應濾波器的輸出提供至被實現為處理來自逆變換塊的輸出的一個或者多個其他環路濾波器(例如,根據採樣自我調整偏移(SAO)濾波器、自我調整環路濾波器(ALF)和/或任何其他濾波器類型實現)。例如,在一個可能的實施方式中,在解碼圖片儲存於圖片緩衝器(此外,有時或可稱為DPB,數位圖片緩衝器)之前,ALF應用於該解碼圖片。ALF被實現為降低解碼圖片的編碼雜訊,以及無論以片級或者以塊級應用ALF,可按逐片分別針對亮度和色度選擇性應用其濾波。在ALF應用中可使用二維2D有限脈衝回應(FIR)濾波。濾波器的係數可在編碼器處逐片設計,以及該資訊然後發信給解碼器(例如,從包括視訊轉碼器(或可稱為編碼器)的發射器通訊裝置發信到包括視頻解碼器(或可稱為解碼器)的接收器通訊裝置)。
一個實施方式根據維納濾波設計產生係數。此外,可能在編碼器處基於逐塊確定是否執行濾波,以及該決定然後基於四叉樹結構發信給解碼器(例如,從包括視訊轉碼器(或可稱為編碼器)的發射器通訊裝置發信到包括視頻解碼器(或可稱為解碼器)的接收器通訊裝置),其中,根據碼率失真優化來決定塊大小。請注意,使用該2D濾波的實現可能引入根據編碼和解碼兩者的複雜度。例如,通過使用根據ALF實現的2D濾波,在發射器通訊裝置中實現的編碼器以及接收器通訊裝置中實現的解碼器的複雜性可能有一些增加。
如其他實施方式提到,ALF的使用可提供許多任意的改進,包括對來自執行隨機量化去噪的峰值信噪比(PSNR)客觀品質測量的改進。此外,隨後編碼的視訊訊號的主觀品質可從光照補償獲得,根據ALF處理,可根據執行偏移處理和縮放處理(例如,根據FIR濾波施加增益)來引入光照補償。
就實現為產生輸出位元流的任何視訊轉碼器架構而言,請注意,該架構可在多種通訊裝置任何一個內實施。輸出位元流可經歷附加的處理,包括誤差校正碼(ECC)、前向誤差校正(FEC)等,從而產生其中具有另外冗餘處理的已修正輸出位元流。此外,就該數位信號而言可以理解,根據產生適合於或者適於經由通訊通道傳輸的連續時間信號,該數位信號可經歷任何適當的處理。即,該視訊轉碼器架構可在操作為經由一個或者多個通訊通道執行一個或者多個信號傳輸的通訊裝置內實現。可對由該視訊轉碼器架構產生的輸出位元流作出額外的處理,從而產生可進入(launch into)通訊通道的連續時間信號。
圖7為示出了框內預測處理的實施方式700的圖示。就本圖而言可以看出,當前視頻資料塊(例如,經常為正方形並且一般包括N×N個圖元)經歷處理,以估計其內的相應圖元。根據該框內預測,利用位於當前塊上方和左邊的先前編碼圖元。從某些角度看,框內預測方向可視為對應於從當前圖元延伸到位於當前圖元上方或者左邊的參考圖元的向量。應用於根據H.264/AVC的編碼的框內預測細節在結合於上文作為參考的相對應標準內指定(例如,國際電信聯盟,ITU-T,ITU的電信標準化部分,H.264(03/2010),H系列:AUDIOVISUAL AND MULTIMEDIA SYSTEMS,Infrastructure of audiovisual services-Coding of moving video,Advanced video coding for generic audiovisual services,Recommendation ITU-TH.264,可替換地,也被稱為International Telecomm ISO/IEC 14496-10-Mpeg-4 Part 10,AVC(Advanced Video Coding),H.264/MPEG-4 Part 10或AVC(Advanced Video Coding),ITU H.264/MPEG4-AVC或等同物)。
殘差(即,當前圖元與參考圖元或者預測圖元之間的差)為已編碼殘差。就本圖而言可以看出,框內預測使用公共框(或者圖片)內圖元進行操作。當然,請注意,給定圖元可能具有與其相關聯的不同的相應分量,並且各相應的分量可能有不同的相應採樣集。
圖8為示出了框間預測處理的實施方式800的圖示。與框內預測相比,框間預測操作為基於當前框(或者圖片)內當前圖元集以及位於框(或者圖片)序列內一個或者多個其他框(或者圖片)內的一個或者多個參考圖元集或者預測圖元集來識別運動向量(例如,框間預測方向)。可以看出,運動向量從當前框(或者圖片)延伸到框(或者圖片)序列內另一個框(或者圖片)。框間預測可利用子圖元插值,使得預測圖元值對應於參考框或者圖片中多個圖元的函數。
雖然可根據框間預測處理來計算殘差,但是該殘差不同於根據框內預測處理計算的殘差。根據框間預測處理,各圖元處殘差又對應於當前圖元和預測圖元值之差。然而,根據框間預測處理,當前圖元和參考圖元或者預測圖元未處於同一框(或者圖片)內。雖然該圖示出了針對一個或者多個先前框或者圖片利用框間預測,但是也請注意,替代性實施方式可使用與當前框之前和/或之後的框相對應的參考框進行操作。例如,根據適當的緩衝和/或記憶體管理,可儲存許多框。當對給定框操作時,可從給定框之前和/或之後的其他框產生參考框。
與CU耦接,基本單元可被用於預測分區模式,即,預測單元或者PU。也請注意,只針對最後深度CU定義PU,並且其相應大小限於CU大小。
圖9和圖10為分別示出了視頻解碼架構的多種實施方式900和1000的圖。
一般而言,該視頻解碼架構對輸入位元流操作。當然,請注意,該輸入位元流可根據通訊裝置從通訊通道接收的信號產生。對從通訊通道接收的連續時間信號可執行多種操作,包括數位採樣、解調、縮放、濾波等,諸如可適於根據產生輸入位元流。此外,其中可實現一種或者多種類型誤差校正碼(ECC)、前向誤差校正(FEC)等的某些實施方式可根據該ECC、FEC等執行適當的解碼,從而產生輸入位元流。即,在已根據產生相對應輸出位元流(例如,諸如可從發射器通訊裝置或者從收發器通訊裝置的發射器部分進入)作出附加冗餘的某些實施方式中,根據產生輸入位元流可執行適當的處理。總體來說,該視頻解碼架構被實現為處理輸入位元流,從而產生與原始輸入視訊訊號相對應(盡可能接近,在理想情況下完美)的輸出視訊訊號,用於輸出到一個或者多個視頻顯示致能裝置。
參考圖9的實施方式900,一般而言,根據執行編碼的互補處理(如在視訊轉碼器架構內進行),諸如熵解碼器(例如,其可根據CABAC、CAVLC等實現)的解碼器對輸入位元流進行處理。輸入位元流可視為(盡可能接近,在理想情況下完美)由視訊轉碼器架構產生的壓縮輸出位元流。當然,在現實生活應用中,在經由一個或者多個通訊鏈路傳輸的信號中可能發生一些誤差,這是有可能的。熵解碼器處理輸入位元流並且提取適當的係數,諸如DCT係數(例如,諸如表示色度、亮度等資訊),並且將該係數提供給逆量化和逆變換塊。在利用DCT變換的情況下,逆量化和逆變換塊可被實現為執行逆DCT(IDCT)操作。隨後,A/D阻塞濾波器被實現為產生與輸出視訊訊號相對應的各個框和/或圖片。這些框和/或圖片可提供到圖片緩衝器或者數位圖片緩衝器(DPB)中,用於執行包括運動補償的其他操作。一般而言,該運動補償操作可視為對應於與視頻編碼相關聯的框間預測。此外,對從逆量化和逆變換塊輸出的信號也可執行框內預測。就視頻編碼而言,類似地,根據解碼輸入位元流,該視頻解碼器架構可被實現為在既不進行框內預測也不進行框間預測、框間預測或者框內預測之間進行模式選擇,從而產生輸出視訊訊號。
參考圖10的實施方式1000,在某些可選實施方式中,諸如可根據視頻編碼實現的一個或者多個環路濾波器(例如,根據採樣自我調整偏移(SAO)濾波器、自我調整環路濾波器(ALF)和/或任何其他濾波器類型來實現)被用於產生輸出位元流,相應的一個或者多個環路濾波器可在視頻解碼器架構內實現。在一個實施方式中,一個或者多個該環路濾波器的適當實現方式在去塊效應濾波器之後。
圖11示出了表的實施方式1100,該表示出針對上下文自我調整二進位算術編碼(CABAC)和上下文自我調整可變長度編碼(CAVLC)熵編碼的巨集塊量化值變化步進語法元素的二值化。
根據諸如根據AVC/H.264(例如,結合於上文作為參考)執行的視頻編碼,編碼器可在兩個不同的熵編碼方法:上下文自我調整二進位算術編碼(CABAC)和上下文自我調整可變長度編碼(CAVLC)之間選擇。CABAC提供高壓縮效率,但在計算上比CAVLC相對更複雜。CAVLC提供相對較低複雜度,但一般並且也相對CABAC提供較少壓縮。根據視頻處理架構的某些實施方式,單獨和相應的電路、硬體、軟體、處理模組、部件等可被實現用於根據CABAC和CAVLC執行相應的視頻編碼操作。即,由於CABAC和CAVLC之間的固有不同差異,針對各CABAC和CAVLC提供不同的各個電路、硬體、軟體、處理模組、部件等。
一般而言,CAVLC和CABAC都使用單獨並且不同的可變長度二進位碼來表示語法元素。例如,圖11中示出針對宏塊量化值變化步進語法元素(mb_qp_delta)的二值化/碼字。可以看出,針對非常相同的宏塊量化值變化步進語法元素,各CABAC和CAVLC將產生不同的相應值。就CABAC而言,產生倉,而就CAVLC而言,產生位元。即,就CABAC而言,所產生的CABAC倉隨後經歷算術編碼以產生位元,該位元隨後被插入到壓縮位元流中。換言之,用於表示CAVLC語法元素的碼字被簡稱為位元(bit)。這些位元被直接插入壓縮位元流中。CABAC語法元素的二值化被稱為倉(bin)。通過使用自我調整算術編碼方法,這些倉被進一步壓縮以產生CABAC位元,該位元被插入壓縮位元流中。
圖12示出了分別針對CABAC和CAVLC熵編碼的單獨和相應的架構的實施方式1200。可以看出,根據CABAC熵編碼,相應語法元素經歷二值化,從而產生相應的CABAC倉,並且這些CABAC倉隨後經歷算術編碼以產生CABAC位元,該位元被插入壓縮位元流中。
就CAVLC熵編碼而言,語法元素經歷可變長度編碼法(VLC)編碼以產生CAVLC位元,該位元被插入壓縮位元流中。
圖13示出了分別針對CABAC/CAVLC熵解碼的單獨和相應架構的實施方式1300。本圖中所執行的逆操作是對於前圖圖12而言。例如,就CABAC熵解碼而言,位元被接收並且經歷算術解碼,從而產生CABAC倉,該倉隨後經歷倉解碼,從而產生語法元素。理想地(例如,假設沒有不可恢復誤差、有害影響等),根據CABAC熵解碼產生的語法元素與已經根據CABAC熵編碼產生的那些語法元素相同。
就CAVLC熵解碼而言,位元被接收並且經歷可變長度編碼法(VLC)解碼,從而產生語法元素。理想地(例如,假設沒有不可恢復誤差、有害影響等),根據CAVLC熵解碼產生的語法元素與已經根據CAVLC熵編碼產生的那些語法元素相同。
CAVLC中所使用的可變長度編碼法和CABAC中所使用的二值化為非常相似處理。它們都簡單地將語法元素值映射為二進位字元串1和0。然而,從以上實例會發現,CABAC和CAVLC不相同。事實上,當與CABAC相比時,CAVLC語法通常差別很大。
讀者應當理解,CABAC和CAVLC編碼法之間有差異。一般而言,典型方法(藉此設計該視頻編碼裝置)針對各CABAC和CAVLC編碼操作實現單獨和相應的電路、硬體、軟體、處理模組、部件、有效面積、晶粒大小和/或處理資源等。然而,雖然CABAC和CAVLC編碼法之間有某些差異,但是可構造適當設計的裝置,其中可作出兩個相應的編碼法之間的某些共性。即,適當設計的處理(各CABAC和CAVLC編碼法藉此共用至少一些共同特性)在某些應用中可提供擴展熵編碼複雜性的能力。例如,通過設計CABAC和CAVLC編碼法共用適當的處理量的架構,電路、硬體、軟體、處理模組、部件、有效面積、晶粒大小和/或處理資源等的減少可通過共用針對CABAC和CAVLC編碼法兩個的共同部件和架構得以實現。
例如,大多數視頻處理裝置可包括支援CABAC和CAVLC編碼法兩個的功能和能力,其中該視頻處理裝置大多數操作地執行CABAC和CAVLC熵編碼以及CABAC和CAVLC熵解碼。針對實施並且操作為支援CABAC和CAVLC熵解碼的硬體式解碼器,支援兩種類型解碼(即,CABAC和CAVLC熵解碼)的必要條件通常需要專用硬體塊,用於解析CABAC和CAVLC語法。即,針對支援CAVLC和CABAC語法分別實施單獨並且不同的硬體塊。雖然該雙重功能可包括在被實施為支援並且符合AVC的某些視頻處理裝置內,但是在該視頻處理裝置內資源使用效率相對較低。此外,該雙重功能可不幸地增加視頻處理裝置(其被實現為支持相互獨立並且不同的CABAC和CAVLC編碼法)的成本、複雜度、晶粒大小、有效面積、處理資源等。
本文中,提出統一的CABAC/CAVLC編碼架構和/或方法,該編碼架構和/或方法可提供視頻處理裝置內可擴展複雜度。例如,在目前正在開發的一個視頻編碼標準中,諸如HEVC/H.265(例如,結合於上文作為參考),可利用該統一CABAC/CAVLC編碼架構,使得單個熵編碼架構和/或方法可提供可擴展複雜度。具體地,根據本發明不同方面及其等同物的統一CABAC/CAVLC編碼架構和/或方法,可實施多種選項從而提供效率和複雜度之間的多種設計和權衡,而不需要兩個完全獨立的熵編碼架構和/或方法,包括電路、硬體、軟體、處理模組、部件、有效面積、晶粒大小和/或處理資源等的任何可能的實現方式重複。
就上述圖11而言可以看出,具體地,就倉而言,根據CABAC熵編碼產生不同的相應值,以及具體地就位元而言,根據CAVLC熵編碼產生不同的相應值。在某些實施方式中,根據CABAC熵編碼可利用完全不同的二值化。即,替代地,可利用不同地實現的可變長度二值化或者其變形,而不是利用目前根據CABAC熵編碼利用的特定二值化。就本文提出的其他圖示和/或實施方式而言應當理解,通過利用可變長度二值化和根據CABAC熵編碼的算術編碼的適當設計組合,就CAVLC熵編碼而言可實現共性。就本文提出的其他圖示和/或實施方式而言應當理解,為設計者提供了對實現根據本發明多個方面及其等同物的統一CABAC/CAVLC編碼架構和/或方法的變化的極大自由度。
圖14示出了分別針對CABAC和CAVLC熵編碼的單獨和相應架構的實施方式1400,以及具體地,其中利用可變長度編碼法(VLC)編碼。
當比較實施方式1400與圖12實施方式1200時,可以看出,由可變長度編碼法(VLC)編碼(其在圖12的實施方式1200中根據CAVLC熵編碼而被採用)來替換根據CABAC熵編碼所採用的二值化處理。即,在實施方式1400中,針對CABAC熵編碼和CAVLC熵編碼這兩者利用極為相同的可變長度編碼法(VLC)編碼。當執行CABAC熵編碼時,根據可變長度編碼法(VLC)編碼產生的倉隨後經歷算術編碼,從而產生CABAC位元,該CABAC位元被插入壓縮位元流中。
就執行CAVLC編碼而言,本圖底部所示的操作和處理與圖12的實施方式1200中執行的操作和處理類似和相似。即,就實施方式1400中的CAVLC熵編碼而言,語法元素經歷VLC編碼,從而產生CAVLC位元,該CAVLC位元被插入壓縮位元流中。
從某些角度看,就圖14而言所示的實施方式1400可理解為使用來自AVC的VLC編碼,而不是根據CABAC編碼通常利用的二值化。根據本文提出的其他圖示和/或實施方式,讀者應當正確理解,可替代性利用可變長度二值化的不同的相應實施方式。即,使用來自AVC的VLC編碼而不是根據CABAC編碼通常利用的二值化,這是一個可行實施方式,但是若需要,可替代性利用許多其他實施方式、變形例、等同物等。
圖15示出了分別針對CABAC和CAVLC熵解碼的單獨和相應的架構的實施方式1500,以及具體地,其中利用VLC解碼。當比較實施方式1500與圖13的實施方式1300時,可以看出,由可變長度編碼法(VLC)解碼(其在圖13的實施方式1300中根據CAVLC熵解碼來利用)來替換根據CABAC熵解碼的倉解碼。即,在實施方式1500中,針對CABAC熵解碼和CAVLC熵解碼兩個利用極為相同的VLC解碼。當執行CABAC熵解碼時,根據算術解碼產生的倉隨後經歷VLC解碼,從而產生已經根據CABAC熵編碼產生的語法元素。就其他圖示和/或實施方式而言也提到,理想地(例如,假設沒有不可恢復誤差、有害影響等),根據CABAC熵解碼產生的語法元素與已經根據CABAC熵編碼產生的那些語法元素相同。
就執行CAVLC解碼而言,本圖底部所示的操作和處理與圖13的實施方式1300中執行的操作和處理類似和相似。即,就實施方式1500中的CAVLC熵解碼而言,位元經歷VLC解碼,從而產生已經根據CAVLC熵編碼產生的語法元素。就其他圖示和/或實施方式而言也提到,理想地(例如,假設沒有不可恢復誤差、有害影響等),根據CABAC熵解碼產生的語法元素與已經根據CABAC熵編碼產生的那些語法元素相同。
就圖7的實施方式700和圖15的實施方式1500而言可以看出,在各CABAC和CAVLC編碼架構和/或方法中實現某些功能塊和/或部件的不同的相應的實現方式。考慮到CABAC和CAVLC編碼架構和/或方法的各個實現方式之間的共性和相似性,某些隨後實施方式和/或圖示操作為組合和共用該功能塊和/或部件。例如,針對CABAC和CAVLC編碼架構和/或方法這兩者,並不一定需要利用不同且單獨實現的功能塊和/或部件。由於CABAC和CAVLC編碼架構和/或方法的各個實現方式之間的某個共性和相似性,在電路、硬體、軟體、處理模組、部件、有效面積、晶粒大小和/或處理資源等方面可作出節省,因為許多被用於支援CABAC和CAVLC編碼這兩者。
圖16A示出了針對CABAC和CAVLC熵編碼這兩者的統一架構的實施方式1600,以及具體地,其中利用可變長度編碼法(VLC)編碼。就圖16A的實施方式1600而言可以看出,針對CABAC和CAVLC熵編碼這兩者利用和共用VLC編碼。語法元素經歷VLC編碼。根據CAVLC編碼,VLC編碼語法元素被提供為CAVLC位元,該CAVLC位元被插入壓縮位元流中。然而,根據CABAC編碼,VLC編碼語法元素隨後經歷算術編碼,從而產生CABAC位元,該CABAC位元被插入壓縮位元流中。就實施方式1600而言可以看出,可利用共用功能塊和/或部件,用於支援CABAC和CAVLC熵編碼這兩者。
圖16B示出了針對CABAC和CAVLC熵解碼這兩者的統一架構的實施方式1601,以及具體地,其中利用可變長度編碼法(VLC)解碼。就圖16B的實施方式1601而言可以看出,針對CABAC和CAVLC熵解碼這兩者利用和共用VLC解碼。根據利用的特定實現方式,由熵解碼架構和/或方法接收CABAC位元或者CAVLC位元。根據CAVLC熵解碼,所接收的CAVLC位元經歷VLC解碼,從而產生語法元素。理想地(例如,假設沒有不可恢復誤差、有害影響等),根據CAVLC熵解碼產生的語法元素與已經根據CAVLC熵編碼產生的那些語法元素相同。
根據CABAC熵解碼,所接收的CABAC位元經歷算術解碼,從而產生倉,該倉隨後經歷VLC解碼,從而產生語法元素。理想地(例如,假設沒有不可恢復誤差、有害影響等),根據CABAC熵解碼產生的語法元素與已經根據CABAC熵編碼產生的那些語法元素相同。
就實施方式1600和1601而言可以看出,針對CABAC和CAVLC熵編碼這兩者利用公共利用的功能塊和/或部件。在本案中,在實施方式1600中,針對CABAC和CAVLC熵編碼這兩者利用VLC編碼;在實施方式1601中,針對CABAC和CAVLC熵解碼這兩者利用VLC解碼。適當設計並且公共共用的VLC編碼和VLC解碼使得更高效地實現對於可操作地支援CABAC和CAVLC熵編碼這兩者的架構和/或方法。雖然實施方式1600和1601利用用在CABAC和CAVLC熵編碼中的VLC編碼和VLC解碼,但是請注意,在針對CABAC/CAVLC熵編碼的二值化統一實現方式中可代替利用公共共用的功能塊和/或部件的其他實現方式。即,如圖16A和圖16B中分別所示的實施方式1600和1601利用分別支援CABAC/CAVLC熵編碼的共同VLC編碼和VLC解碼,在其他實施方式中可利用可變長度二值化的替代形式。
圖17A示出了針對CABAC和CAVLC熵編碼這兩者的統一架構的實施方式1700,以及具體地,其中利用可變長度二值化。實施方式1700大體上描繪針對CABAC和CAVLC熵編碼這兩者共同利用的可變長度二值化。就圖17A而言,可以看出語法元素經歷針對CABAC和CAVLC熵編碼這兩者的可變長度二值化。然而,就CABAC編碼而言,已經經歷可變長度二值化(從而產生倉)的語法元素隨後經歷算術編碼,從而產生CABAC位元,該CABAC位元被插入壓縮位元流中。可替代地,就CAVLC編碼而言,已經經歷可變長度二值化的語法元素事實上為CAVLC位元,該CAVLC位元被插入壓縮位元流中。
就圖17A的實施方式1700而言可以理解,針對CABAC和CAVLC熵編碼這兩者利用單個統一二值化。例如,CABAC二值化和CAVLC可變長度編碼之間給定的相似性,針對CABAC和CAVLC熵編碼這兩者可利用廣義、單個統一二值化。此外,請注意,該單個統一二值化的一個可行實施方式將為利用根據AVC利用的VLC編碼。然而,除了根據AVC利用的實施方式之外,可替代性利用該單個統一二值化的替代性變形例。
圖17B示出了針對CABAC和CAVLC熵解碼這兩者的統一架構的實施方式1701,以及具體地,其中利用可變長度倉解碼。實施方式1701大體上描繪針對CABAC和CAVLC熵解碼這兩者共同利用的可變長度倉解碼。就圖17B而言,可以看出針對CABAC和CAVLC熵解碼這兩者利用和共用可變長度倉解碼。根據正在利用的特定實施,由熵解碼架構和/或方法接收CABAC位元或者CAVLC位元。根據CAVLC熵解碼,所接收的CAVLC位元經歷可變長度倉解碼,從而產生語法元素。理想地(例如,假設沒有不可恢復誤差、有害影響等),根據CAVLC熵解碼產生的語法元素與已經根據CAVLC熵編碼產生的那些語法元素相同。
根據CABAC熵解碼,所接收的CABAC位元經歷算術解碼,從而產生倉,該倉隨後經歷可變長度倉解碼,從而產生語法元素。理想地(例如,假設沒有不可恢復誤差、有害影響等),根據CABAC熵解碼產生的語法元素與已經根據CABAC熵編碼產生的那些語法元素相同。
根據未來視頻編碼標準開發,包括目前正在開發的標準,諸如HEVC,可利用適當設計的可變長度二值化,使得CABAC解壓縮的輸出(倉)將使用與CAVLC完全相同的語法。以此方式,編碼器可選擇是否提供高效率還是低複雜度,但是VLC解碼將只需要單個語法解析引擎。可以看出,通過提供操作地支援CABAC和CAVLC熵編碼這兩者的該架構和/或方法,可利用單個語法解析引擎。
請注意,當需要高效率編碼時,熵編碼器可執行二值化和算術編碼這兩者。當需要低複雜度時,簡單地跳過或者繞過算術編碼。兩個情況(CABAC和CAVLC熵編碼)下使用的二進位碼為相同,所以無需另外語法解析器。
自我調整算術編碼和二進位步驟之間複雜度分佈也可被修改從而更佳匹配本文提出的新穎架構和/或方法。例如,在修改可變長度二值化和算術編碼的複雜度方面,設計者被給予很大寬容度。例如,如果CABAC熵編碼需要固定壓縮,那麼可變長度二值化複雜性被修改的程度將引導算術編碼複雜性的相對應修改。例如,如果可變長度二值化複雜性被增加到一個程度,那麼算術編碼複雜性將減少到相對應程度,使得根據CABAC熵編碼的整體壓縮將保留不變。可替換地,如果可變長度二值化複雜性被減少到一個程度,那麼算術編碼複雜性將增加到相對應程度,使得根據CABAC熵編碼的整體壓縮將保留不變。該實施就本文提出的某些其他實施方式和/或圖示而言描述。還應當理解,根據任何給定應用所需的特定實現方式,可增加或者減少CABAC和CAVLC熵編碼這兩者的整體壓縮。
考慮到利用根據AVC定義的CABAC二值化的實施方式,請注意,與由CABAC熵編碼和/或CAVLC熵編碼提供的整體壓縮相比,以AVC定義的CABAC二值化本身可視為提供有些相對弱的壓縮。即,與其他整體熵編碼方案相比,根據CABAC熵編碼的二值化操作(諸如,就圖12的實施方式1200而言)可視為提供相對弱的壓縮。因為CABAC倉通過另外算術編碼步驟(此外,諸如就圖12的實施方式1200而言可以看出),用於AVC CABAC的特定二進位碼無需特別高效,前提是它們可依靠由算術編碼步驟提供的額外壓縮。另一方面,CAVLC提供相當高效的可變長度編碼。雖然CAVLC熵編碼可能比CABAC編碼整體(例如,當使用算術編碼時)相對不太高效,但是在假設其複雜性減少的某些應用中,CAVLC(尤其是其VLC編碼分量)可以接受。
在統一二值化方案中,諸如根據本文提出本發明不同方面及其等同物,假設在前面使用較強二進位碼,算術編碼上下文自我調整可能略微弱化。就本文提出的其他實施方式和/或圖而言還應當理解,根據票證應用,當使用該重新定義和/或修改的CABAC二值化時,可選擇在增加的壓縮效率和複雜性之間適合權衡的適當判定。例如,在意圖提供相同整體壓縮的實施方式中,相對較強二值化可與相對或者略微較弱自我調整算術編碼器組合,以在不增加總複雜性的情況下提供與現有CABAC方法相同的整體性能。
數個隨後圖示和/或實施方式描繪就增加或者減少可變長度二值化複雜性和/或增加或者減少根據CABAC/CAVLC熵編碼的算術編碼複雜性而言可作出的某些權衡取捨。此外,數個隨後圖示和/或實施方式描繪就增加或者減少可變長度倉解碼複雜性和/或增加或者減少根據CABAC/CAVLC熵解碼的算術解碼複雜性而言可作出的某些權衡取捨。
圖18A示出了針對CABAC和CAVLC熵編碼這兩者的統一架構的實施方式1800,以及具體地,其中利用複雜性增加可變長度二值化,以及也具體地結合針對CABAC熵編碼的複雜性降低的算術編碼。實施方式1800大體上描繪針對CABAC和CAVLC熵編碼這兩者共同利用的複雜性相對增加的可變長度二值化。就圖18A而言可以看出,語法元素經歷針對CABAC和CAVLC熵編碼這兩者的複雜性相對增加的可變長度二值化。然而,就CABAC編碼而言,已經經歷複雜性相對增加的可變長度二值化(從而產生倉)的語法元素隨後經歷複雜性相對降低的算術編碼,從而產生CABAC位元,該CABAC位元被插入壓縮位元流中。可替換地,就CAVLC編碼而言,已經經歷複雜性相對增加的可變長度二值化的語法元素事實上為CAVLC位元,該CAVLC位元被插入壓縮位元流中。
可以看出,當期望保持相對固定的CABAC壓縮時,就可變長度二值化和根據CABAC/CAVLC熵編碼的算術編碼而言可作出某些權衡取捨。一般而言,當可變長度二值化複雜性增加時,那麼算術編碼複雜性應當相應減少。可替換地,當可變長度二值化複雜性減少時,那麼算術編碼複雜性應當相應增加。此外,就該實施方式而言,就不同功能塊和/或部件而言作出相應增加/降低複雜性,以確保相對固定的CABAC壓縮。當然,就圖18A的實施方式1800而言可以看出,當執行CAVLC熵編碼時,複雜性相對增加的可變長度二值化將提供比根據典型CAVLC熵編碼進行的壓縮相對較大的壓縮。
圖18B示出了針對CABAC和CAVLC熵解碼這兩者的統一架構的實施方式1801,以及具體地,其中根據CABAC熵解碼來利用複雜性增加的可變長度倉解碼,以及也具體地結合針對CABAC熵解碼的複雜性降低的算術解碼。圖18B的實施方式1801中的操作可恰當理解為圖18A的實施方式1800中所示操作的互補或者逆操作。
實施方式1801大體上描繪針對CABAC和CAVLC熵解碼這兩者共同利用的複雜性相對增加的可變長度倉解碼。就圖18B而言可以看出,針對CABAC和CAVLC熵解碼這兩者利用和共用複雜性相對增加的可變長度倉解碼。根據正在利用的特定實現方式,由熵解碼架構和/或方法接收CABAC位元或者CAVLC位元。根據CAVLC熵解碼,所接收的CAVLC位元經歷複雜性相對增加的可變長度倉解碼,從而產生語法元素。理想地(例如,假設沒有不可恢復誤差、有害影響等),根據CAVLC熵解碼產生的語法元素與已經根據CAVLC熵編碼產生的那些語法元素相同。
根據CABAC熵解碼,所接收的CABAC位元經歷複雜性相對降低的算術解碼,從而產生倉,該倉隨後經歷複雜性相對增加的可變長度倉解碼,從而產生語法元素。理想地(例如,假設沒有不可恢復誤差、有害影響等),根據CABAC熵解碼產生的語法元素與已經根據CABAC熵編碼產生的那些語法元素相同。
圖19A示出了針對CABAC和CAVLC熵編碼這兩者的統一架構的實施方式1900,以及具體地,其中利用複雜性增加的可變長度二值化。實施方式1900大體上描繪針對CABAC和CAVLC熵編碼這兩者共同利用的複雜性相對增加的可變長度二值化。就圖19A而言可以看出,語法元素經歷針對CABAC和CAVLC熵編碼這兩者的複雜性相對增加的可變長度二值化。然而,就CABAC編碼而言,已經經歷複雜性相對增加的可變長度二值化(從而產生倉)的語法元素隨後經歷算術編碼,從而產生CABAC位元,該CABAC位元被插入壓縮位元流中。可替換地,就CAVLC編碼而言,已經經歷複雜性相對增加的可變長度二值化的語法元素事實上為CAVLC位元(其插入壓縮位元流)。
就本圖而言可以看出,雖然可變長度二值化複雜性相對增加,但是根據CABAC熵編碼利用的算術編碼複雜性並不一定相對減少。即,根據CABAC熵編碼的算術編碼可能未改變。因此,應當理解,基於針對CABAC和CAVLC熵編碼這兩者利用的可變長度二值化的複雜性增加,針對這兩者的整體壓縮將相應增加。
圖19B示出了針對CABAC和CAVLC熵解碼這兩者的統一架構的實施方式1901,以及具體地,其中根據CABAC熵解碼來利用複雜性增加的可變長度倉解碼。圖19B的實施方式1901中的操作可恰當理解為圖19A的實施方式1900中所示操作的互補或者逆操作。
實施方式1901大體上描繪針對CABAC和CAVLC熵解碼這兩者共同利用的複雜性相對增加的可變長度倉解碼。就圖19B而言可以看出,針對CABAC和CAVLC熵解碼這兩者利用和共用複雜性相對增加的可變長度倉解碼。根據正在利用的特定實現方式,由熵解碼架構和/或方法接收CABAC位元或者CAVLC位元。根據CAVLC熵解碼,所接收的CAVLC位元經歷複雜性相對增加的可變長度倉解碼,從而產生語法元素。理想地(例如,假設沒有不可恢復誤差、有害影響等),根據CAVLC熵解碼產生的語法元素與已經根據CAVLC熵編碼產生的那些語法元素相同。
根據CABAC熵解碼,所接收的CABAC位元經歷算術解碼,從而產生倉,該倉隨後經歷複雜性相對增加的可變長度倉解碼,從而產生語法元素。理想地(例如,假設沒有不可恢復誤差、有害影響等),根據CABAC熵解碼產生的語法元素與已經根據CABAC熵編碼產生的那些語法元素相同。
就本圖而言可以看出,雖然可變長度倉解碼複雜性相對增加,但是根據CABAC熵解碼利用的算術解碼的複雜性並不一定相對減少。即,根據CABAC熵解碼的算術解碼可能未改變。為此,應當理解,根據CABAC和CAVLC熵解碼這兩者接收的位元整體壓縮將對應於相對增加的壓縮;因此,針對CABAC和CAVLC熵解碼這兩者利用的可變長度二值化複雜性也將相應地相對增加。
圖20A示出了針對CABAC和CAVLC熵編碼這兩者的統一架構的實施方式2000,以及具體地,其中利用複雜性降低的可變長度二值化。實施方式2000大體上描繪針對CABAC和CAVLC熵編碼這兩者共同利用的複雜性相對降低的可變長度二值化。就圖20A而言可以看出,語法元素經歷針對CABAC和CAVLC熵編碼這兩者的複雜性相對降低的可變長度二值化。然而,就CABAC編碼而言,已經經歷複雜性相對降低的可變長度二值化(從而產生倉)的語法元素隨後經歷算術編碼,從而產生CABAC位元,該CABAC位元被插入壓縮位元流中。可替換地,就CAVLC編碼而言,已經經歷複雜性相對降低的可變長度二值化的語法元素事實上為CAVLC位元(其被插入壓縮位元流)。
就本圖而言可以看出,雖然可變長度二值化的複雜性相對減少,但是根據CABAC熵編碼利用的算術編碼複雜性並不一定相對減少。即,根據CABAC熵編碼的算術編碼可能未改變。因此,應當理解,基於針對CABAC和CAVLC熵編碼這兩者利用的可變長度二值化的複雜性降低,針對這兩者的整體壓縮將相應減少。
圖20B示出了針對CABAC和CAVLC熵解碼這兩者的統一架構的實施方式2001,以及具體地,其中根據CABAC熵解碼來利用複雜性降低的可變長度倉解碼。圖20B的實施方式2001中的操作可恰當地理解為圖20A的實施方式2000中所示操作的互補或者逆操作。
實施方式2001大體上描繪針對CABAC和CAVLC熵解碼這兩者共同利用的複雜性相對降低的可變長度倉解碼。就圖20B而言可以看出,針對CABAC和CAVLC熵解碼這兩者利用和共用複雜性相對降低的可變長度倉解碼。根據正在利用的特定實現方式,由熵解碼架構和/或方法接收CABAC位元或者CAVLC位元。根據CAVLC熵解碼,所接收的CAVLC位元經歷複雜性相對降低的可變長度倉解碼,從而產生語法元素。理想地(例如,假設沒有不可恢復誤差、有害影響等),根據CAVLC熵解碼產生的語法元素與已經根據CAVLC熵編碼產生的那些語法元素相同。
根據CABAC熵解碼,所接收的CABAC位元經歷算術解碼,從而產生倉,該倉隨後經歷複雜性相對降低的可變長度倉解碼,從而產生語法元素。理想地(例如,假設沒有不可恢復誤差、有害影響等),根據CABAC熵解碼產生的語法元素與已經根據CABAC熵編碼產生的那些語法元素相同。
就本圖而言可以看出,雖然可變長度倉解碼複雜性相對降低,但是根據CABAC熵解碼利用的算術解碼複雜性並不一定相對減少。即,根據CABAC熵解碼的算術解碼可能未改變。為此,應當理解,根據CABAC和CAVLC熵解碼這兩者接收的位元整體壓縮將對應於相對減少的壓縮;因此,針對CABAC和CAVLC熵解碼這兩者利用的可變長度二值化的複雜性也將相應地相對減少。
就本文提出的多種實施方式和/或圖而言可以適當理解,按照以下方式向設計者提供了實現多種功能塊和/或方法的很大靈活度,即,該方式使得根據CABAC/CAVLC熵編碼以及CABAC/CAVLC熵解碼可共用並且共同使用某些功能塊和/或方法。根據特定應用,根據CABAC和CAVLC熵編碼架構和/或方法,在共同共用的功能塊和/或方法與非共用的功能塊和/或方法的複雜性之間可作出多種權衡取捨。例如,如果CABAC編碼需要共同或者固定壓縮,那麼在可變長度二值化/可變長度倉解碼的複雜性與相對應的算術編碼/解碼功能塊和/或方法的複雜性之間可作出權衡取捨。可替換地,如果CABAC或者CAVLC編碼需要增加或者減少壓縮,那麼可實現適當選擇和修改的可變長度二值化/可變長度倉解碼以及相對應算術編碼/解碼功能塊和/或方法。
可以恰當理解,通過利用CABAC/CAVLC熵編碼架構和/或方法內某些共同共用和共同利用的功能塊和/或方法,在電路、硬體、軟體、處理模組、部件、有效面積、晶粒大小和/或處理資源等方面節省,因為許多被用於支援CABAC和CAVLC編碼這兩者。
圖21、圖22A、圖22B、圖23、圖24A和圖24B示出了根據視頻編碼(例如,在一個或者多個通訊裝置內)執行的方法的多種實施方式。
參考圖21的方法2100,方法2100以接收多個語法元素作為開始,如塊2110所示。方法2100以操作可變長度二值化模組來處理該多個語法元素以產生多個上下文自我調整二進位算術編碼(CABAC)倉或者多個上下文自我調整可變長度編碼(CAVLC)位元作為繼續,如塊2120所示。
方法2100然後以操作算術編碼模組來處理該多個CABAC倉從而產生多個CABAC位元進行操作,如塊2130所示。從某些角度看並且就某些實施方式而言,塊2120和2130的操作可視為對應於熵編碼(例如,諸如根據熵編碼器操作執行)。方法2100以選擇性輸出多個CABAC位元或者多個CAVLC位元作為繼續,如塊2140所示。
參考圖22A的方法2200,方法2200以接收多個語法元素作為開始,如塊2210所示。方法2200以操作可變長度二值化模組來處理該多個語法元素從而產生多個上下文自我調整可變長度編碼(CAVLC)位元作為繼續,如塊2220所示。方法2200然後以輸出多個CAVLC位元作為操作,如塊2230所示。
參考圖22B的方法2201,方法2201以接收多個語法元素作為開始,如塊2211所示。方法2201然後以操作可變長度二值化模組來處理該多個語法元素以產生多個上下文自我調整二進位算術編碼(CABAC)倉作為操作,如塊2221所示。方法2201以操作算術編碼模組來處理該多個CABAC倉以產生多個CABAC位元作為繼續,如塊2231所示。方法2201然後以輸出多個CABAC位元作為操作,如塊2241所示。
參考圖23的方法2300,方法2300以接收多個二進位算術編碼(CABAC)位元或者多個上下文自我調整可變長度編碼(CAVLC)位元作為開始,如塊2310所示。方法2300以操作算術解碼模組來處理該多個CABAC位元以產生多個CABAC倉作為繼續,如塊2320所示。
方法2300然後以操作可變長度倉解碼模組來處理該多個CAVLC位元或者該多個CABAC倉以產生該多個語法元素的多個估計作為操作,如塊2330所示。從某些角度看並且就某些實施方式而言,塊2320和2330的操作可視為對應於熵解碼(例如,諸如根據熵解碼器操作而執行)。
參考圖24A的方法2400,方法2400以接收多個上下文自我調整可變長度編碼(CAVLC)位元作為開始,如塊2410所示。方法2400以操作可變長度倉解碼模組來處理該多個CAVLC位元以產生多個語法元素的多個估計作為繼續,如塊2420所示。
參考圖24B的方法2401,方法2401以接收多個二進位算術編碼(CABAC)位元作為開始,如塊2411所示。方法2401然後以操作算術解碼模組來處理該多個CABAC位元以產生多個CABAC倉作為操作,如塊2421所示。方法2401以操作可變長度倉解碼模組來處理該多個CABAC倉以產生多個語法元素的多個估計作為繼續,如塊2431所示。
還請注意,就本文中多種方法而言所描述的多種操作和功能可在諸如使用基帶處理模組和/或在其內實現的處理模組和/或在其內的其他部件的通訊裝置內執行。
如本文中所使用,術語“大體上”和“大約”為其相對應術語和/或項之間相對性提供業界認可的公差。該業界認可的公差範圍從百分之一到百分之五十,並且對應於但不限於部件值、積體電路技術偏差、溫度偏差、升降次數和/或熱雜訊。項之間的相對性範圍從百分之幾差異到大幅差異。也如本文中所使用,術語“操作地耦接至”、“耦接至”和/或“耦接”包括項之間直接耦接和/或項目間經由中間項(例如,項包括但不限於部件、元件、電路和/或模組)的間接耦接,其中針對間接耦接,中間項不更改信號的資訊,而可調整其電流電平、電壓電平和/或功率電平。還如本文中所使用,推斷耦接(即,通過推斷,一個元件耦接至另一元件)包括在兩個項之間以與“耦接至”相同方式的直接和間接耦接。還如本文中所使用,術語“可操作為”或者“可操作地耦接至”表明項包括電源連接、輸入、輸出等中一個或者多個,當啟用時執行一個或者多個其相對應功能,並且還包括至一個或者多個其他項的推斷耦接。還如本文中所使用,術語“與...相關聯”包括單獨項和/或嵌入另一項內的一個項的直接和/或間接耦接。如本文中所使用,術語“有利地比較”表明兩個以上項、信號等的比較,提供所需關係。例如,當所需關係為信號1比信號2具有更大幅值時,當信號1幅值大於信號2幅值時或者當信號2幅值小於信號1幅值時,可實現有利比較。
也如本文中所使用,術語“處理模組”、“模組”、“處理電路”和/或“處理單元”(例如,包括諸如可操作、實現和/或用於編碼、用於解碼、用於基帶處理等的多種模組和/或電路)可為單個處理裝置或者多個處理裝置。該處理裝置可為微處理器、微控制器、數位訊號處理器、微電腦、中央處理單元、現場可程式設計閘陣列、可程式設計邏輯裝置、狀態機、邏輯電路、類比電路、數位電路和/或基於硬編碼電路和/或操作指令來操縱信號(類比和/或數位)的任何裝置。處理模組、模組、處理電路和/或處理單元可具有相關聯記憶體和/或集成記憶體元件,該相關聯記憶體和/或集成記憶體元件可為單個記憶體裝置、多個記憶體裝置和/或該處理模組、模組、處理電路和/或處理單元的嵌入式電路。該記憶體裝置可為唯讀記憶體(ROM)、隨機存取記憶體(RAM)、易失性記憶體、非易失性記憶體、靜態記憶體、動態儲存裝置器、快存、緩存記憶體和/或儲存數位資訊的任何裝置。請注意,如果處理模組、模組、處理電路和/或處理單元包括多於一個處理裝置,那麼該處理裝置可集中式定位(例如,經由有線和/或無線匯流排結構直接耦接在一起)或者可分散式定位(例如,經由區域網路和/或廣域網路絡間接耦接的雲計算)。還請注意,如果處理模組、模組、處理電路和/或處理單元經由狀態機、類比電路、數位電路和/或邏輯電路來實現其一個或者多個功能,那麼儲存相應操作指令的記憶體和/或記憶體元件可嵌入於包括狀態機、類比電路、數位電路和/或邏輯電路的電路內或者在該電路外部。還請注意,記憶體元件可儲存與一個或者多個圖中所示步驟和/或功能中的至少一些相對應的硬編碼和/或操作指令,以及處理模組、模組、處理電路和/或處理單元執行該硬編碼和/或操作指令。該記憶體裝置或者記憶體元件可包括在製品中。
上文借助於說明本發明的特定功能和關係的方法步驟已經描述了本發明。為了便於描述,本文中已經任意定義這些功能構建塊和方法步驟的邊界和順序。只要適當地執行特定功能和關係,就可定義替代性邊界和順序。因此,任何替代性邊界或者順序均在本發明範圍和精神內。此外,為了便於描述,已經任意定義這些功能構建塊的邊界。只要適當地執行某些重要功能,就可定義替代性邊界。同樣,本文中也可已經任意定義流程圖方塊來說明某些重要功能。在使用範圍內,流程圖方塊邊界和順序可另外定義,並且仍可執行某些重要功能。功能構建塊和流程圖方塊及順序這兩者的替代性定義均在本發明範圍和精神內。所屬領域的普通技術人員也應當認識到,本文中功能構建塊以及其他說明性方塊、模組和部件可實現為通過分離部件、專用積體電路、執行適當軟體的處理器等或者它們任何組合來說明。
在一個或者多個實施方式方面,也可能已經至少部分描述本發明。本發明實施方式在本文中被用作說明本發明、本發明方面、本發明特徵、本發明概念和/或本發明實例。體現本發明的裝置、製品、機器和/或處理的物理實施方式可包括參考本文中所討論實施方式描述的方面、特徵、概念、實例等中一個或者多個。此外,根據各個圖,實施方式可包括有可使用相同或者不同參考標號的相同或者相似命名的功能、步驟、模組等,因為該功能、步驟、模組等可為相同或者相似功能、步驟、模組等或者不同功能、步驟、模組等。
除非另有特別相反說明,本文提出的任何圖中到元件、從元件和/或元件之間的信號可為類比或者數位、連續時間或者時間離散以及單端或者差分。例如,如果信號路徑示出為單端路徑,那麼它也表示差分信號路徑。同樣,如果信號路徑示出為差分路徑,那麼它也表示單端信號路徑。雖然本文描述一個或者多個特定架構,但是所屬領域普通技術人員應當明白,同樣可實施其他架構,該其他架構使用未明確示出的一個或者多個資料匯流排、元件間直接連接和/或其他元件間間接耦接。
術語“模組”被用本發明多種實施方式描述中。模組包括經由硬體實施為執行一個或者多個模組功能的功能塊,諸如處理一個或者多個輸入信號以產生一個或者多個輸出信號。實現該模組的硬體自身可結合軟體和/或固件來操作。如本文所使用,模組可包括一個或者多個子模組,該子模組本身為模組。
雖然本文已經明確描述本發明的多種功能和特徵的特定組合,但是這些特徵和功能的其他組合同樣可行。本發明並不限於本文所公開的特定實例,並且明確包括這些其他組合。
110‧‧‧通訊裝置
112‧‧‧發射器
114‧‧‧編碼器
116‧‧‧接收器
118‧‧‧解碼器
120‧‧‧通訊裝置
124‧‧‧解碼器
128‧‧‧編碼器
130‧‧‧衛星通訊通道
132‧‧‧碟形衛星天線
134‧‧‧碟形衛星天線
140‧‧‧無線通訊通道
142‧‧‧通訊塔
144‧‧‧通訊塔
150‧‧‧有線通訊通道
152‧‧‧本地天線
154‧‧‧本地天線
160‧‧‧光纖通訊通道
162‧‧‧使用電光(E/O)介面
164‧‧‧電光(E/O)介面
201‧‧‧資訊位元
203‧‧‧離散值調製碼元序列
204‧‧‧連續時間發射信號
205‧‧‧連續時間發射信號
206‧‧‧連續時間接收信號
207‧‧‧連續時間接收信號
208‧‧‧時間離散接收信號
209‧‧‧度量
220‧‧‧編碼器和碼元映射器
222‧‧‧功能塊
224‧‧‧功能塊
230‧‧‧發射驅動器
232‧‧‧數位至類比轉換器
234‧‧‧發射濾波器
260‧‧‧模擬前端
262‧‧‧濾波器
264‧‧‧類比至數位轉換器
270‧‧‧度量產生器
280‧‧‧解碼器
280a‧‧‧處理模組
280b‧‧‧處理模組
297‧‧‧發射器
299‧‧‧通訊通道
301‧‧‧電腦
302‧‧‧電腦
303‧‧‧電視機
304‧‧‧電視機
305‧‧‧掌上型媒體單元
306‧‧‧機上盒
307‧‧‧數位視訊光碟播放機
308‧‧‧通用數位圖像和/或視頻處理裝置
圖1和圖2示出了通訊系統的多種實施方式。
圖3A示出了電腦的實施方式。
圖3B示出了膝上型電腦的實施方式。
圖3C示出了高清晰度(HD)電視機的實施方式。
圖3D示出了標準清晰度(SD)電視機的實施方式。
圖3E示出了掌上型媒體單元的實施方式。
圖3F示出了機上盒(STB)的實施方式。
圖3G示出了數位視訊光碟(DVD)播放機的實施方式。
圖3H示出了通用數位圖像和/或視頻處理裝置的實施方式。
圖4、圖5和圖6為示出了視頻編碼架構的多種實施方式的圖示。
圖7為示出了框內預測處理的實施方式的圖示。
圖8為示出了框間預測處理的實施方式的圖示。
圖9和圖10為示出了視頻解碼架構的多種實施方式的圖示。
圖11示出了表的實施方式,該表顯示了針對上下文自我調整二進位算術編碼(CABAC)和上下文自我調整可變長度編碼(CAVLC)熵編碼的巨集塊量化值變化步進語法元素(macroblock quantizer delta syntax element)的二值化。
圖12示出了分別針對CABAC和CAVLC熵編碼的單獨和相應架構的實施方式。
圖13示出了分別針對CABAC/CAVLC熵解碼的單獨和相應架構的實施方式。
圖14示出了分別針對CABAC和CAVLC熵編碼的單獨和相應架構的實施方式,以及具體地,其中利用可變長度編碼法(VLC)編碼。
圖15示出了分別針對CABAC和CAVLC熵解碼的單獨和相應架構的實施方式,以及具體地,其中利用VLC解碼。
圖16A示出了針對CABAC和CAVLC熵編碼這兩者的統一架構的實施方式,以及具體地,其中利用可變長度編碼法(VLC)編碼。
圖16B示出了針對CABAC和CAVLC熵解碼這兩者的統一架構的實施方式,以及具體地,其中利用可變長度編碼法(VLC)解碼。
圖17A示出了針對CABAC和CAVLC熵編碼這兩者的統一架構的實施方式,以及具體地,其中利用可變長度二值化。
圖17B示出了針對CABAC和CAVLC熵解碼這兩者的統一架構的實施方式,以及具體地,其中利用可變長度倉(bin,二進位檔案)解碼。
圖18A示出了針對CABAC和CAVLC熵編碼這兩者的統一架構的實施方式,以及具體地,其中利用複雜性增加的可變長度二值化,以及也具體地結合針對CABAC熵編碼的複雜性降低的算術編碼。
圖18B示出了針對CABAC和CAVLC熵解碼這兩者的統一架構的實施方式,以及具體地,其中根據CABAC熵解碼來利用複雜性增加的可變長度倉解碼,以及也具體地結合針對CABAC熵解碼的複雜性降低的算術解碼。
圖19A示出了針對CABAC和CAVLC熵編碼這兩者的統一架構的實施方式,以及具體地,其中利用複雜性增加的可變長度二值化。
圖19B示出了針對CABAC和CAVLC熵解碼這兩者的統一架構的實施方式,以及具體地,其中根據CABAC熵解碼來利用複雜性增加的可變長度倉解碼。
圖20A示出了針對CABAC和CAVLC熵編碼這兩者的統一架構的實施方式,以及具體地,其中利用複雜性降低的可變長度二值化。
圖20B示出了針對CABAC和CAVLC熵解碼這兩者的統一架構的實施方式,以及具體地,其中根據CABAC熵解碼來利用複雜性降低的可變長度倉解碼。
圖21、圖22A、圖22B、圖23、圖24A和圖24B示出了根據視頻編碼(例如,在一個或者多個通訊裝置內)所執行的方法的多種實施方式。
权利要求:
Claims (10)
[1] 一種設備,包括:輸入端,接收多個語法元素;熵編碼器,操作地根據多個複雜性運算模式自我調整執行熵編碼,所述熵編碼器包括:可變長度二值化模組,處理所述多個語法元素以產生多個上下文自我調整二進位算術編碼CABAC倉或者多個上下文自我調整可變長度編碼CAVLC位元;以及算術編碼模組,處理所述多個CABAC倉以產生多個CABAC位元;以及至少一個輸出端,選擇性輸出所述多個CABAC位元或者所述多個CAVLC位元,或者當所述熵編碼器根據所述多個複雜性運算模式中的第一複雜性運算模式操作時輸出所述CABAC位元以及當所述熵編碼器根據所述多個複雜性運算模式中的第二複雜性運算模式操作時輸出所述CAVLC位元。
[2] 如申請專利範圍第1項所述之設備,其中所述多個CABAC倉為所述多個CAVLC位元。
[3] 如申請專利範圍第1項所述之設備,其中所述熵編碼器在第一時間處或者在第一時間期間根據所述多個複雜性運算模式中的所述第一複雜性運算模式執行熵編碼;以及所述熵編碼器在第二時間處或者在第二時間期間根據所述多個複雜性運算模式中的所述第二複雜性運算模式執行熵編碼;並且所述多個複雜性運算模式中的所述第二複雜性運算模式與所述多個複雜性運算模式中的第一複雜性運算模式相比不複雜。
[4] 如申請專利範圍第1項所述之設備,其中所述設備為第一通訊裝置;並且還包括:第二通訊裝置,經由至少一個通訊通道與所述第一通訊裝置進行通訊,所述第二通訊裝置包括:至少一個附加輸入端,接收所述多個CABAC位元或者所述多個CAVLC位元;以及熵解碼器,包括:算術解碼模組,處理所述多個CABAC位元以產生多個CABAC倉;以及可變長度倉解碼模組,處理所述多個CAVLC位元或者所述多個CABAC倉以產生所述多個語法元素的多個估計;以及其中所述第二通訊裝置為電腦、膝上型電腦、高清晰度(HD)電視機、標準清晰度(SD)電視機、掌上型媒體單元、機上盒(STB)和數位視訊光碟(DVD)播放機中的至少一個。
[5] 一種用於操作通訊裝置的熵編碼器的方法,所述方法包括:接收多個語法元素;操作所述熵編碼器的可變長度二值化模組,從而處理所述多個語法元素,以產生多個上下文自我調整二進位算術編碼(CABAC)倉或者多個上下文自我調整可變長度編碼(CAVLC)位元;和操作所述熵編碼器的算術編碼模組從而處理所述多個CABAC倉,以產生多個CABAC位元;以及選擇性輸出所述多個CABAC位元或者所述多個CAVLC位元。
[6] 如申請專利範圍第5項所述之方法,其中所述多個CABAC倉為所述多個CAVLC位元。
[7] 如申請專利範圍第5項所述之方法,其中所述熵編碼器操作地根據多個複雜性運算模式自我調整執行熵編碼。
[8] 如申請專利範圍第5項所述之方法,還包括:操作所述熵編碼器從而在第一時間處或者在第一時間期間根據第一複雜性運算模式執行熵編碼;以及操作所述熵編碼器從而在第二時間處或者在第二時間期間根據第二複雜性運算模式執行熵編碼。
[9] 如申請專利範圍第5項所述之方法,還包括:當所述熵編碼器根據第一複雜性運算模式操作時,輸出所述CABAC位元;以及當所述熵編碼器根據與所述第一複雜性運算模式相比不複雜的第二複雜性運算模式操作時,輸出所述CAVLC位元。
[10] 如申請專利範圍第5項所述之方法,還包括:操作附加通訊裝置,經由至少一個通訊通道通過以下步驟與所述通訊裝置進行通訊:接收所述多個CABAC位元或者所述多個CAVLC位元;操作算術解碼模組來處理所述多個CABAC位元,以產生多個CABAC倉;操作可變長度倉解碼模組來處理所述多個CAVLC位元或者所述多個CABAC倉,以產生所述多個語法元素的多個估計,其中所述附加通訊裝置為電腦、膝上型電腦、高清晰度(HD)電視機、標準清晰度(SD)電視機、掌上型媒體單元、機上盒(STB)和數位視訊光碟(DVD)播放機中至少一個。
类似技术:
公开号 | 公开日 | 专利标题
TWI542196B|2016-07-11|根據視頻編碼進行自適應環路濾波的設備及操作視頻編碼器的方法
US11166011B2|2021-11-02|Sample adaptive offset | in accordance with video coding
TWI504221B|2015-10-11|用於操作通訊裝置的視訊編碼器的裝置和方法
TWI542219B|2016-07-11|頻域取樣自適應偏移(sao)
US10165285B2|2018-12-25|Video coding tree sub-block splitting
US11019351B2|2021-05-25|Video coding with trade-off between frame rate and chroma fidelity
TWI524739B|2016-03-01|根據視頻編碼的採樣點自適應偏移(sao)
TWI493885B|2015-07-21|用於操作通訊裝置的熵編碼器及設備
TWI538478B|2016-06-11|用於數位視訊處理的裝置及視訊處理器的操作方法
US20130235926A1|2013-09-12|Memory efficient video parameter processing
同族专利:
公开号 | 公开日
KR20130016133A|2013-02-14|
HK1179791A1|2013-10-04|
TWI493885B|2015-07-21|
CN102917215B|2016-05-04|
US20130034148A1|2013-02-07|
CN102917215A|2013-02-06|
EP2555435A1|2013-02-06|
US9231616B2|2016-01-05|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
TWI348653B|2006-06-08|2011-09-11|Via Tech Inc|Decoding of context adaptive binary arithmetic codes in computational core of programmable graphics processing unit|
JP4928176B2|2006-06-27|2012-05-09|キヤノン株式会社|映像符号化装置及び映像符号化方法|
JP4878262B2|2006-10-31|2012-02-15|キヤノン株式会社|エントロピー符号化装置|
CN101578877B|2007-01-11|2016-05-04|汤姆森许可贸易公司|对mpeg-4avc高层编码中cavlc4:4:4帧内、高4:4:4帧内和高4:4:4预测简档使用针对coded_block_flag语法元素和coded_block_pattern语法元素的语法的方法和装置|
EP2150061A4|2007-05-21|2011-07-20|Nec Corp|VIDEO CODING DEVICE, VIDEO CODING METHOD, AND VIDEO CODING PROGRAM|
KR20100018810A|2008-08-07|2010-02-18|전자부품연구원|초고화질 영상 부호화, 복호화 방법 및 장치 및 컴퓨터로판독가능한 기록매체|
KR101485339B1|2008-09-29|2015-01-26|삼성전자주식회사|무손실 부호화/복호화 장치 및 방법|
WO2011050641A1|2009-10-28|2011-05-05|Mediatek Singapore Pte. Ltd.|Video coding methods and video encoders and decoders with localized weighted prediction|JP6257587B2|2013-03-28|2018-01-10|京セラ株式会社|無線通信装置及び信号処理方法|
US10334253B2|2013-04-08|2019-06-25|Qualcomm Incorporated|Sample adaptive offset scaling based on bit-depth|
WO2015131388A1|2014-03-07|2015-09-11|Qualcomm Incorporated|Simplification of depth intra mode coding in 3d video coding|
WO2018030291A1|2016-08-10|2018-02-15|パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ|符号化装置、復号装置、符号化方法及び復号方法|
KR20190031250A|2016-08-10|2019-03-25|파나소닉 인텔렉츄얼 프로퍼티 코포레이션 오브 아메리카|부호화 장치, 복호 장치, 부호화 방법 및 복호 방법|
法律状态:
优先权:
申请号 | 申请日 | 专利标题
US201161515819P| true| 2011-08-05|2011-08-05||
US13/523,818|US9231616B2|2011-08-05|2012-06-14|Unified binarization for CABAC/CAVLC entropy coding|
[返回顶部]